/*oOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoO

Authors: Nitay Megides
		 Rachel Banino

Project: Exercise 3

Using:	General.h
		hw_code\Hw3Types.h
		hw_code\Bmp24LineReader.h
		

Description:
The comparer module encapsulates the facebook and contains mainly one
function: FacebookAddAndCompare. This function adds the face to the facebook
and compares it to the rest of the faces found.

oOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoO*/

#ifndef COMPARER_H
#define COMPARER_H

#include "General.h"

#include "hw_code\Hw3Types.h"
#include "hw_code\Bmp24LineReader.h"


/* ComparerInitialize()
 * -----------------------------------
 * Initializes the comparer														*/
BOOL ComparerInitialize();

/* ComparerFree()
 * -----------------------------------
 * Frees the comparer (Waiting for all the compare threads to finish			*/
void ComparerFree();


/* FacebookAddAndCompare(PArea face)
 * -----------------------------------
 * Adds the face to the facebook, then creates a thread that checks if the 
 * face already exists
 *
 * face: The location of the face in the picture								*/
BOOL FacebookAddAndCompare(PArea face);

/* FacesCount()
 * -----------------------------------
 * Returns how many faces are saved on the facebook								*/
int FacesCount();

/* SaveFacebookToFile(char* filename)
 * -----------------------------------
 * Save a CSV file containing the faces in the facebook							*/
void SaveFacebookToFile(char* filename);

#endif // COMPARER_H